Interactive graphical interface including a streaming media component and method and system of producing the same

ABSTRACT

A multiphase interactive advertisement includes a first phase having a first graphical interface and a second phase having a second graphical interface including at least a streaming media component space. In an exemplary embodiment, the second phase has a dimension that is greater than a dimension of the first phase. The multiphase interactive advertisement further includes a streaming media component incorporated into the streaming media component space of the second phase. The multiphase interactive advertisement, and specifically, the streaming media component, is generated using a software player engine that includes a core set of player variables and controls.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application claims priority under 35 U.S.C. §119(e) to U.S.Provisional Patent Application Ser. No. 60/467,447, filed on May 2,2003, the entire disclosure of which is incorporated herein byreference.

FIELD OF THE INVENTION

The present invention relates to the field of streaming media and, inparticular, to a system and method for displaying an interactivegraphical interface to an end user that includes a streaming mediacomponent.

BACKGROUND OF THE INVENTION

The banner ad is one of the most prevalent forms of Internet advertisingtoday. Depending on the message, banner ads come in many shapes andsizes. As the Internet has matured, companies have had to balance theuse of web page space between content, which is ultimately why a usergoes to a particular web site, and advertising, which is one of theprimary sources of revenue for Internet companies.

Because space for both content and advertising on a highly traffickedweb site such as Yahoo!'s home page is very valuable, using as littlespace as possible is very advantageous. Thus, there is a desire in theInternet advertising industry to maximize use of space on a web page soas to fit as much content and advertisements as possible whilemaintaining a clean and attractive look and feel of the web page.

Moreover, it is desirable to provide interactive advertising thatpermits a user to interact with one or more features of theadvertisement, which has an added benefit of focusing the user'sattention on the advertisement. One way to make an Internetadvertisement interactive is to add vectored graphics and/or streamingmedia (e.g., streaming audio or video) to the advertisement. By way ofbackground, Macromedia Flash is one type of cross-platform compatiblevector-based graphic animation tool. Vector-based images, which are alsoreferred to as object-oriented graphics, use geometrical formulas torepresent images. Vector-oriented images are more flexible than othertypes of images, such as bit maps, because they can be resized andstretched. Presently, although vector-based graphic animation tool, suchas Macromedia Flash, provide the capability to embed streaming mediaelements, these tools have very rudimentary streaming media playercapabilities.

Thus, in order to provide streaming media capabilities in a vector-basedgraphic player, a customized player must be specifically developed andhard-coded for a particular application. Such hard-coded players lackthe ability to be reused for subsequent purposes and must be at leastpartially recoded in the event the streaming content is changed.Moreover, because such players are typically built on a “one-off” basis,the players lack the ability to integrate with existing streaming mediaadministration and development tools. Thus, there is a need and desirefor a system that provides core streaming media player functions andcontrols in a vector-based graphic animation environment.

SUMMARY OF THE INVENTION

The foregoing as well as other needs are satisfied by the presentinvention. In an exemplary embodiment, a method of creating a multiphaseadvertisement including a media component comprises generating a firstphase of the multiphase advertisement, the first phase including atleast a graphical interface; generating a second phase of the multiphaseadvertisement, wherein the second phase has a dimension greater than adimension of the first phase, the second phase including a streamingmedia component space; building a streaming media component using asoftware player engine, the player engine including at least a set ofmedia player variables and a set of media player controls, the streamingmedia component including a link to streaming media content;incorporating the streaming media component into the streaming mediacomponent player space of the second phase of the multiphaseadvertisement; and displaying the multiphase advertisement on a webpage.

In an exemplary embodiment, a multiphase interactive advertisementcomprises a first phase having a first graphical interface; a secondphase having a second graphical interface including at least a streamingmedia component space, the second phase having a dimension that isgreater than a dimension of the first phase; and a streaming mediacomponent incorporated into the streaming media component space of thesecond phase. The second phase of the multiphase interactiveadvertisement is triggered by an action performed on the first phase ofthe multiphase interactive advertisement.

Other features of the present invention will become apparent from thefollowing detailed description, considered in conjunction with theaccompanying drawing figures. It is to be understood, however, that thedrawings are designed solely for the purpose of illustration and not asa definition of the limits of the invention, for which reference shouldbe made to the appended claims. Further, it will be clear to those ofskill in the art that various modifications, additions, and subtractionscan be made without departing from the spirit or scope of the claims.

BRIEF DESCRIPTION OF THE FIGURES

In the drawing figures, which are merely illustrative, and wherein likereference characters denote similar elements throughout the severalviews:

FIG. 1 is a screen shot depicting a first phase of a multiphaseadvertisement;

FIG. 2 is a screen shot depicting a second phase of multiphaseadvertisement;

FIG. 3 is a screen shot depicting a streaming media component of asecond phase of a multiphase advertisement;

FIG. 4 is a screen shot depicting a streaming media component of asecond phase of a multiphase advertisement;

FIG. 5 is a screen shot depicting a streaming media component of asecond phase of a multiphase advertisement;

FIGS. 6 a and 6 b are schematic overviews of a system for deliveringstreaming media to a multiphase advertisement; and

FIGS. 7-12 depict a user interface of a vector-based graphicsapplication for generating the multiphase advertisement of the presentinvention.

DETAILED DESCRIPTION OF THE EXEMPLARY EMBODIMENTS

The present application relates to an interactive graphical interfaceincorporating a streaming media component, as illustrated by FIGS. 1-12,and a player engine for producing the same.

According to an exemplary embodiment shown in FIGS. 1-5, an interactivegraphical interface 100 may be displayed as a portion of an HTML webpage 20 using Macromedia's Flash Player. The interactive graphicalinterface 100 may also be displayed as a separate window on a user'sdesktop. Although not necessary, in many instances, the display of theinteractive graphical interface 100 will have two or more displayphases, which may be triggered automatically or in response to userinput. For example, in FIG. 1, an initial display phase 102 of theinteractive graphical interface 100 takes the form of a traditionalbanner advertisement. In the initial display phase 102, the interactivegraphical interface 100 uses as little space on the web page 20 aspossible. It should be understood, however, that the size and locationof the interactive graphical interface 100 is a matter of design choice.

Typically, the interactive graphical interface 100 is displayed to anend user as part of a web page 20 displayable in an Internet browser 10,such as Microsoft Internet Explorer or Netscape Navigator. In general,the interactive graphical interface 100 is controlled in a client-serverenvironment. Preferably, using thin-client technologies, such as forexample Macromedia Flash technology, a significant portion of theprocessing required to provide the desired functionality to theinteractive graphical interface 100 can be performed at the client-sideon a personal computer, tablet pc, personal digital assistant (PDA),WAP-enabled mobile device, or other computer device having a display.Server-side components, such as streaming media clip files, are servedto the interactive graphical interface 100 on the client-side on demandso as to minimize bandwidth overhead. In other words, large streamingmedia files need not be downloaded to the client-side until needed inresponse to user action or other triggering events.

Although it is not possible to depict in static figures, the interactivegraphical interface 100 may have an animated component to it, althoughthis feature is not necessary. For instance, in the exemplary embodimentdescribed herein, a vector based graphics engine, such as for exampleMacromedia Flash technology, may be used to provide vector-basedanimated graphics, as described further below. By way of example only,Macromedia Flash technology permits the design of graphical displaysthat include moving, timed, or animated components. At least a portion105 of the initial display phase 102 of the interactive graphicalinterface 100 is responsive to a user input, such as a mouse click ormouse over.

In the example shown in FIG. 1, a user would click on the text “clickhere to view the trailer”. The user input, in this case a mouse click,triggers a second display phase 120′ of the interactive graphicalinterface 100′ as shown in FIG. 2. The second display phase 120′ may bean expanded display to permit additional features and interactiveoptions to be displayed in the interactive graphical interface 100′window. As shown in FIG. 2, the interactive graphical interface 100′ mayinclude a toolbar 110′ with which the user can access variousfunctionalities of the interactive graphical interface 100′. In theexample shown in FIG. 2, the interactive graphical interface 100′ is aninteractive advertisement for a new movie to be released. Thus, thetoolbar 110′ may provide the user access to summary informationconcerning the movie, information and pictures of the cast, the movietrailer, and an ability to purchase movie tickets. In alternateembodiments, for example advertisements for particular consumer goods,the interactive graphical interface 100′ could provide the user with thefunctionality to purchase the consumer good being advertised.

An advantage of the multiphase interactive graphical interface 100, 100′is that it permits a highly interactive, multimedia interface that canbe used to sell goods and services and/or serve as an advertisingplatform while being non-intrusive and using as small amount of space asis possible. Because space on a highly trafficked web site such asYahoo!'s home page is very valuable, using as little space as possibleis very advantageous. Thus, an objective of the present invention is tomaximize use of that space so as to fit as much content andadvertisements as possible while maintaining the clean and attractivelook and feel of the web page. However, when a user moves their cursorover the ad, or clicks on a feature of the ad, the ad will change,preferably enlarge, so as to more firmly grab the user's attention.

As discussed above in connection with FIG. 2, one feature of theinteractive graphical interface 100′ is to provide the user with theability to view video related to the subject of the interactivegraphical interface 100. In the example described herein, theinteractive graphical interface 100 includes an embedded streaming mediacomponent 150 that provides the user with the ability to view trailersor other video clips related to the movie or cast. As shown in FIG. 3,an embedded streaming media component 150 of the interactive graphicalinterface 100 may either automatically play in response to the usertriggered second display phase 120, or may play in response to the usertriggering the streaming media component 150 from the toolbar. In eithercase, a streaming media window 155 is displayed on the interactivegraphical interface 100, along with a streaming media player toolbar160. Streaming media content is delivered to and displayed in thestreaming media window 155. The streaming media player toolbar 160provides the user with functionality to control the play of thestreaming media, such as to pause the video, restart play of the video,select the size of the streaming window, select the preferred bandwidthof the stream, and the like.

As shown in FIG. 4, the interactive graphical interface 100 may includemore than a single streaming media clip. The interactive graphicalinterface 100 preferably displays a thumbnail 170 of the streaming mediaclip to facilitate selection of the clip by the user. The thumbnailcontains a link to the streaming media servers on the server-side and anidentifier of the clip ID.

FIG. 5 illustrates additional functionality of the interactive graphicalinterface 100 whereby an end user can send an e-mail about the subjectof the interactive graphical interface to a friend. In the example ofFIG. 5 an input form component 180 is displayed, which permits the enduser to enter a name and e-mail address to send information about theinterface or the information contained therein.

In an exemplary embodiment, the interactive graphical interface iscreated using a vector-based graphics development tool, such as by wayof example only the Macromedia Flash development application. By way ofbackground, Macromedia Flash is a cross-platform compatible vector-basedgraphic animation tool. Vector-based images, which are also referred toas object-oriented graphics, use geometrical formulas to representimages. Vector-oriented images are more flexible than other types ofimages, such as bit maps, because they can be resized and stretched.Presently, although Macromedia Flash provides the capability to embedstreaming media elements in the Flash player, Macromedia Flash has veryrudimentary streaming media player capabilities. Thus, in order toprovide streaming media capabilities in a Flash player, a customizedplayer must be specifically developed and hard-coded for a particularapplication. Such players lack the ability to be reused for subsequentpurposes and must be at least partially recoded in the event thestreaming content is changed. Moreover, because such players aretypically built on a “one-off” basis, the players lack the ability tointegrate with existing streaming media administration and developmenttools.

Thus, in order to more efficiently create an interactive graphicalinterface that includes an embedded streaming media component, such asis shown in FIGS. 1-5, a player engine provides comprehensive playerfunctionalities to facilitate the creation of a customized interactivegraphical interface by providing tools to permit specification ofparticular stream clips to be delivered to the end user and integrateswith existing streaming media content administration and developmenttools. The player engine comprises a player engine object, which is atransparent layer object that will act as a central player engine anddata transport from the interactive graphical interface player tobackend administrative tools. High level functions like the playing ofvideo, video position, audio volume, etc, are preferably all handled viamethod calls on the player engine object. Data collection and handlingalso preferably occurs via the player engine object through method callson the player engine object.

In an exemplary embodiment described in connection with the MacromediaFlash development application, the player engine object is preferablycoded using ActionScript, which is a JavaScript compliant programminglanguage native to Macromedia Flash development tools. Of course personsof skill will recognize that the use of Macromedia Flash technologies,ActionScript, or any other particular vector-based graphics applicationsis not critical to the invention and any number of known or laterdeveloped technologies can be implemented within the intended scope ofthe present invention.

Because ActionScript is an object-oriented language, an exemplaryembodiment of the player engine object will now be described inconnection with the player engine objects various properties andmethods. Persons of skill will understand that the particular variablenames for the properties, methods, and events described below areexemplary only. The player engine object preferably, but notnecessarily, includes the following properties:

PlayerEngine (eventid, vlocX, vlocY, channelbuttons, channelMC)[constructor] EventId The EventId is a unique identifier for aparticular interactive graphical interface. VlocX This is thex-coordinate of the streaming video area. VlocY This is the y-coordinateof the streaming video area. channelbuttons An array of absolute pathsto the channel buttons on the interface. channelMC An absolute path tothe channel clip MC on the interface.

The following describes various exemplary methods and events controlledby the player engine object:

Video/Audio Control

playVideo(clipID) [method]—the clipID is the unique identifier for thecontent or streaming video that the user wishes to play. The playVideomethod initiates a steam of video. The player engine object will setupthe player window, connect to the server, select the correct streamaccording to an end user bandwidth detection method, such as thatdisclosed in U.S. Pat. No. 6,601,009, the entire disclosure of which isincorporated herein by reference, and begin playing the selected stream.

on PlayVideo( ) [event]—this is an event that launches each time anactive video begins playback.

pauseVideo( ) [method]—if there is a video currently playing, the videowill be paused. If the video is currently paused, the video willun-pause and continue to play.

on PauseVideo( ) [event]—event that launches each time an active videois paused.

stopVideo( ) [method]—if there is an active video currently playing orpaused, this method will stop the video, and unload the player window.

on StopVideo( ) [event]—event that launches each time an active video'splayback is stopped (due to EOF or via user control, but not due tobuffering)

setAudioLevel(vLevel) [method]—vLevel—the volume level, mute is 0, fullvolume is 100. The method sets the volume of the video stream to thelevel indicated as vLevel. The vLevel is persistent across all new videostreams until it is set to a new level. The vLevel defaults to 80 andwill reset upon destroying the player event object.

setVidSize(vidX, vidY, vidW, vidH) [method]—

-   -   vidX—this is the X coordinate of the upper left corner of the        video window.    -   vidY—this is the Y coordinate of the upper left corner of the        video window    -   vidW—this is the total width of the video window    -   vidH—this is the total height of the video window

The setVidSize method forces a resize of the video stream window andplaces it in a given position on the interactive graphical interface.

resetVidSize( ) [method]—this method will reset the video stream to thedefault size and position initially set for the movie.

getStreamIP( ) [method]—this method will return a string that is theserver IP address that the active video is currently streaming from.

BandWidth Control

detectBandWidth( ) [method]—this method forces a bandwidth detection ofthe end user's network connection. The method saves the detectedbandwidth setting in the object property of PlayerEngine.bandWidth.

setBandWidth(bLevel) [method]

-   -   bLevel—the bandwidth level you wish to manually set onto the        object. Bandwidth levels are typically 14, 28, 56, 100, 200,        300, 500, 700, and 800 Kbps. The method is used to override the        detected bandwidth setting and forces a given bandwidth setting        onto the player engine object. This method can be used in a        preference window on the interactive graphical interface.

getBandWidth( ) [method]—This method returns an integer that is thecurrent value set in PlayerEngine.bandWidth

Channel Control

getChannelList( ) [method]—This method returns an array listing of allactive channels created in the administration tool, as described furtherbelow, for the eventID.

Referral Control—“Tell A Friend”

tellFriendSubmit(toName, toEmail, fromName, fromEmail) [method]

-   -   toName—this is the name of the person whom the e-mail is        addressed to.    -   toEmail—this is the e-mail address of the person whom the e-mail        is addressed to.    -   fromName—this is the name of the person whom the e-mail is from.    -   fromEmail—this is the e-mail address of the person whom the        e-mail is from.

This method triggers an e-mail to be sent to a person listed as beingfrom the end user.

tellFriendResponse(success) [event]

-   -   success—false for email failure, true for email success.

This is an event trigger after a “tell a friend” e-mail is attempted bythe external server.

Shared Objects

saveSOProp(name, data) [method]

-   -   name—this is the name of the data to be saved.    -   value—this is the data to be saved.

This method saves a value of data into a location identified as “name”within the engine's master shared object.

loadSOProp(name) [method]

-   -   name—this is the name of the data to be retrieved.

This method loads a value of data from a location identified as “name”within the engine's master shared object.

delSOProp(name) [method]

-   -   name—this is the name of property to be deleted.

This method deletes the specified property and its associate data fromthe shared object.

getSOPropList( ) [method]—This method returns an object with propertiesand values for each named data value that exists in the master sharedobject.

getSOFreeSpace( ) [method]—This method returns the free amount of spaceleft in the master shared object.

Information Tracing

liveTrace(traceLine, [CLEAR]) [method]

-   -   traceLine—this is a line of text you want to have appear as a        new line in the live trace window    -   CLEAR—set to true to clear out the live trace window

This method maintains a visual text display of debug and traceinformation you may need as you develop the player, since the flashplatform provides no reliable method of querying behind-the-scenes dataand information in the live environment.

The above-described player engine advantageously permits a designer of acustomized interactive graphical interface, such as an advertisementdisplayed on a web page or a standalone web cast, to efficientlyintegrate streaming media into the interactive graphical interface andutilize in-house streaming media administration tools to select andcreate streaming media clips for integration. The following describes anexemplary method of integrating streaming media administration tools,such as those described in International Published Application No. WO02/065305 A1 to Alan Florschuetz for which the entire disclosure isincorporated herein by reference.

The above-referenced patent publication generally describes a softwaretool for generating and administering a “web-cast event”. A “web-castevent” is generally an interactive, multimedia presentation displayablevia public communication networks such as the Internet and World WideWeb. Although a “web-cast event” is in some respects different fromproduction of an interactive graphical interface for display via theInternet or other communication network, the development andadministration tools available to upload, manage and serve streamingmedia content are essentially the same. In this way, existing streamingmedia development and administration tools can be leveraged acrossmultiple technologies. Below is a general description of an exemplarystreaming media development and administration tool and its use in theproduction of an interactive graphical interface.

With reference to FIGS. 6 a and 6 b, an alternate system architecture tothe exemplary architecture described in International PublishedApplication No. WO 02/065305 A1 to Alan Florschuetz is shown. Althoughthe basic system flow and architecture remains substantially similar,differences described herein facilitate publication of content to beused in an interactive graphical interface. In the alternatearchitecture, a primary web-cast event server farm 200 for delivery ofthe streaming media player utilizes a load balancer 302, such as anAlteon load balancer, with a single virtual IP address, which routes theuser to one or more servers as the need for bandwidth requires. Theseservers are responsible for delivery of all HTML, active server pages(ASP), and Flash .swf files necessary to deliver an event interfacedepending on the needs of the chosen event interface.

As further disclosed by International Published Application No. WO02/065305 A1 to Alan Florschuetz, an admin user 390 desiring to producean interactive graphical interface including an embedded streaming mediacomponent accesses production software stored on a server system throughthe Internet. Using the production software, the admin user 390 is ledthrough a series of steps during which the admin user inputs selects andsets the design properties for various features of the interactivegraphical interface. For example, an admin user can include a variety ofinteractive functional features, including but not limited to flashintroductions, pushed or user driven slides, interactive questions, andinteractive polls.

At any time during the design process, the admin user 390 can pushstreaming media or other types of content to the server system to beincluded in the interactive graphical interface. Content includesvarious types of media such as, by way of non-limiting example,streaming video or audio, graphical slides, Macromedia® Flash® orShockwave® content, HTML documents, or other types of web-based content.Any number of different types of interactive features can be included inthe production software.

Once the process of selecting the values for the user-perceptibleattributes and uploading the streaming media content is completed, thevalues and corresponding design properties set by the admin user 390 arepublished to a specialized XML Message File database 304 for secondaryprocessing. By using XML message files to communicate the designproperties and streaming media content information, the system realizesincreases in capacity and performance due to the elimination of a needfor direct database interaction. The files are stored based on theirtype and priority and are harvested by secondary servers into thedatabase. The types of data include: registration, polling, surveys,questions, and user tracking information.

A primary asset database 306 serves as the main storage component forall event delivery. When events are published from the streaming mediacontent development tool, all associated content is published hereincluding slides images, supporting html files, custom channel pages,and XML configuration files necessary to run the interface.

A secondary server 308 that harvests the stored XML message files fromthe XML message file database 304 may be provided to permit regulationof the flow of data into the XML message file database 304 and cansustain database outages without impacting the event interface. Thesecondary server 308 preferably runs several services on an intervalbasis and to collect the XML files from a directory structure thatidentifies the types of XML files. Based on the volume and intensity ofthe XML files, the XML files are opened and the data processed in mostcases to the database at different intervals based on priority.

In addition, a process monitor 310 is provided to monitor functionsbeing performed by the secondary server 308 described in the precedingparagraph. One feature of the process monitor 310 is to detect failuresin the secondary server 308 and restart the process, if necessary. Ifrepeated failures are detected, the process monitor will broadcast anotice of the failures to administrators.

An Admin Processing Queue 312 may also be provided to handle requestsfrom the Admin tool to take action on an admin user's request that canbe handled outside of the admin user's session. By way of example, whena PowerPoint file is uploaded, a message is sent to this queue thatindicates the PowerPoint file needs to be converted to individual slideimages. The admin user can go on with other development activities whilethis backend process converts the slides. Once the slides are converted,the .ppt file is activated in the admin. Another example would occurwhen an admin user directs the system to publish event information. Inthis case, the Admin processing queue 312 would preferably send amessage to handle the copying of the necessary files and publication ofthe files in XML format, as described above. Yet another example wouldbe the publishing of answered questions for a Q & A portion of a liveevent. Each time a question is answered in the admin tool, the Adminprocessing queue 312 publishes an XML file that is used by the front-endservers to display the answered questions. Additional items may include:processing of email reminders that are set up in the admin, nightlyreport runs and slide sync processing.

Content Prep and Admin Storage 314—This is the storage system to supportthe admin application and all pre-published content and xmlconfiguration files for event preparation.

Primary Admin Database 316—Stores all processed data to support theadmin and data collected during events.

Replicated Database 318—This is a database that is a replication of thelive data on a 30-minute delay. This database is used to run ad-hocreports and nightly report processing to prevent load issues on the livedatabase. This protects the admin and xml harvesting processes.

Extension to Admin Processing Queue 320—This is part of the AdminProcessing Queue and is used primarily for nightly reporting runs anddata delivery to the Self Serve Reporting system.

Thus, with reference to the preceding disclosure and FIGS. 1-6, anexemplary process for designing and creating an interactive graphicalinterface 100 with an embedded streaming media component 150 will now bedescribed. Using an event administration tool, various event propertiesare designed and set by a user. For example, if the interactivegraphical interface is a live announcement for a movie premier, theadmin user might upload various streaming media clips from the movie,upload various cast images and other content pertaining to the cast,design various end user surveys, and might desire to enable a near“real-time” Q & A environment. An exemplary process and system fordesigning such events is described in International PublishedApplication No. WO 02/065305 A1.

Once the admin user has completed the design phase, the designproperties of the event are published to the XML message database 304.In this way, the event design properties are easily accessible and theXML database 304 essentially functions as a bridge between the backendcontent databases and servers and the client-side interactive graphicalinterface. At this point, the interactive graphical interface 100 itselfcan be produced.

With further reference to FIGS. 7-12, the design process of theinteractive graphical interface 100 is shown using the Macromedia Flashdevelopment tool 700. In FIGS. 7 and 8, the player engine object 700 isused to create a player component (shown as 720 in FIG. 8) in the Flashplayer space 715. This player component functions as the engine throughwhich streams are requested from back-end streaming servers and playedon the client-side to the end user. In FIG. 9, a channel templateportion 712 of the Audio/Visual component 711 is dragged onto the Flashplayer space. The channel template 712 is populated with channelinformation from the XML message database at runtime. Using the eventproperties, such as the eventID, the channel template 712 references acollection of stream clips associated with the eventID. With referenceto FIGS. 1-6, toolbar 110, and most specifically the portion of thetoolbar that permits an end user to select streaming media componentssuch as the “Trailer and Clips” button, the “Interviews” button, and the“Behind the Scenes” button, permits an end user to select a particularchannel and view the clips within that channel. By way of example, the“Interviews” channel may contain one or more streaming clip of variouscast members being interviewed about the movie. Similarly, the“Trailers” channel might include one or more of the movie's trailers.The channel template may be modified to have a graphical interface asshown in FIGS. 2-6.

In FIG. 10, one or more clip templates 713 are dragged onto the Flashplayer space 720. The clip templates 713 will be populated based uponthe channel information queried from the XML message database. Like thechannel templates 812, the clip templates 713 reference a streaming clipwithin the selected channel, which is in turn referenced by the eventID.

In FIG. 11, the player component properties 725 are set by theadministrator. For example, an eventID indicates to the XML messageserver which event assets are being called by the interactive graphicalinterface. The channel template 712 and clip template 713 names are alsoset at this time. Once these properties 725 are set, other features ofthe interactive graphical interface can be designed in the Flash tool,and the interactive graphical interface can be published to a web sitefor access by a plurality of end users. The player engine object 710, asdescribed in detail above, includes all of the tools necessary toretrieve, start and operate the streaming media component of theinteractive graphical interface. FIG. 12 depicts a stripped down versionof an interactive graphical interface playing in the Macromediadevelopment tool.

The following describes how the interactive graphical interface operatesto deliver an embedded stream to the end user. By using the toolbar 110,the end user can select to play one or more streaming clips. Forexample, the end user may select to play the movie trailer. The eventIDfor the event being displayed by the interactive graphical interfacereferences the group of streaming clips referenced in turn by thechannel name. At this point, the player engine may perform bandwidthdetection to determine the bit rate of the stream to be pushed to theend user's system. The clip template references one or more streams thathave various bit rates to accommodate different user's systems.

Once the player engine determines an appropriate stream bit rate and theclip has been selected by the end user, the player engine makes a streamcall to the server-side streaming servers to deliver the requestedstream. An exemplary method and system for delivering streams in such afashion is disclosed by International Publication No. WO 02/057943, theentire disclosure of which is incorporated herein by reference.

Thus, while there have been shown and described and pointed outfundamental novel features of the invention as applied to preferredembodiments thereof, it will be understood that various omissions andsubstitutions and changes in the form and details of the disclosedinvention may be made by those skilled in the art without departing fromthe spirit of the invention. It is the intention, therefore, to belimited only as indicated by the scope of the claims appended hereto.

1. A method comprising: generating, by a computing device from a file, afirst phase of a single multiphase advertisement, the file comprisingfirst phase and second phase dimension information, the multiphaseadvertisement including a streaming media component, the first phaseincluding a graphical interface having a first dimension defined by saiddimension information; generating, by the computing device from thefile, a second phase of the single multiphase advertisement in which thegraphical interface has a second dimension that is different from thefirst dimension of the first phase, the second dimension defined by saiddimension information, in the second phase of the multiphaseadvertisement the graphical interface includes a streaming mediacomponent space; building, by the computing device from the file, thestreaming media component using a software player engine in accordancewith a predefined design of the multiphase advertisement's graphicalinterface by which at least a set of core media player variables and aset of core media player controls are each predefined and part of themultiphase advertisement, the streaming media component including a linkto streaming media content; and incorporating, by the computing device,the streaming media component into the streaming media component spaceof the graphical interface in the second phase of the multiphaseadvertisement so that the streaming media component is made available toplay the streaming media content in the second phase of the multiphaseadvertisement's graphical interface.
 2. The method according to claim 1,wherein the content to be played via the streaming media component isstreaming video.
 3. The method according to claim 1, wherein the contentto be played via the streaming media component is streaming audio. 4.The method according to claim 1, wherein the first graphical interfaceis an animated display.
 5. The method according to claim 4, wherein theanimated display of the first graphical interface uses vector-basedanimated graphics.
 6. The method according to claim 1, wherein the firstgraphical interface of the first phase includes a toolbar, the toolbarincluding at least a link to trigger the second phase.
 7. The methodaccording to claim 6, wherein the link to trigger the second phase alsolaunches the streaming media component.
 8. The method according to claim6, wherein the single multiphase advertisement relates to a motionpicture and wherein the toolbar includes at least a link to a trailer ofthe motion picture.
 9. The method according to claim 6, wherein thesingle multiphase advertisement relates to a motion picture and whereinthe toolbar includes at least a link to still images of scenes from themotion picture.
 10. The method according to claim 6, wherein the singlemultiphase advertisement relates to a motion picture and wherein thetoolbar includes at least a link to a streaming video of scenes from themotion picture.
 11. The method according to claim 6, wherein the singlemultiphase advertisement relates to a motion picture and wherein thetoolbar includes at least a link to a streaming video of interviews ofactors or actresses from the motion picture.
 12. The method according toclaim 6, wherein the single multiphase advertisement relates to a motionpicture and wherein the toolbar includes at least a link to aninteractive interface for purchasing tickets to view the motion pictureat a theater.
 13. The method according to claim 6, wherein the toolbarincludes at least a link to content about the subject of the singlemultiphase advertisement.
 14. The method according to claim 6, whereinthe toolbar includes at least a link to an interactive form forcontacting a second user about the subject of the single multiphaseadvertisement.
 15. The method according to claim 14, wherein theinteractive form includes a field for inputting an electronic mailaddress of the second user.
 16. The method according to claim 15,wherein, upon submission of the interactive form, an electronic mail istransmitted to the electronic mail address of the second user withinformation about the subject of the single multiphase advertisement.17. The method according to claim 1, wherein the set of media playervariables includes a video size.
 18. The method according to claim 1,wherein the set of media player variables includes a stream bandwidth.19. The method according to claim 1, wherein the set of player controlsincludes a play control and a stop control.
 20. The method according toclaim 1, wherein the streaming media content is remotely stored on astreaming server, and wherein the streaming media component includes astream identifier that is passed to the streaming server to retrieve thestreaming media content.
 21. The method of claim 1 wherein thegenerating of the second phase of the single multiphase advertisementoccurs when a user moves a cursor over the first phase of the singlemultiphase advertisement.
 22. A method comprising: providing, by acomputing device from a file, a first phase of a graphical interface ofa single multiphase advertisement, the first phase comprising firstphase and second phase dimension information and including at least afirst interactive component for triggering a second phase, the graphicalinterface having a first dimension in the first phase, the firstdimension defined by the dimension information; providing, by thecomputing device from the file, a second phase of the graphicalinterface that is launched in response to interaction with the firstinteractive component, in the second phase the graphical interfacehaving a second dimension that is different from the first dimension ofthe first phase and a streaming media component space, the seconddimension defined by the dimension information; and providing, by thecomputing device from the file, at least one streaming media componentintegrated in the graphical interface in the second phase so that thestreaming media component is made available to play streaming mediacontent in the second phase graphical interface, the streaming mediacomponent built using a software player engine in accordance with apredefined design of the graphical interface by which at least a set ofcore media player variables and a set of core media player controls areeach predefined and a part of the graphical interface, the streamingmedia component including a link to streaming media content.
 23. Themethod in claim 22, wherein the first interactive component is a dynamicvector graphic.
 24. The method in claim 22, wherein the firstinteractive component is an embedded streaming graphic.
 25. The methodin claim 22, wherein the first interactive component is a hyperlink. 26.The method in claim 22, wherein the first interactive component is abutton having a graphic.
 27. The method of claim 22, wherein the firstinteractive component is a graphical toolbar including at least onehyperlink for triggering a second phase graphical interface of themultiphase advertisement.
 28. The method of claim 22, wherein thestreaming media component includes a link to streaming video content.29. The method of claim 22, wherein the streaming media componentincludes a link to streaming audio content.
 30. The method of claim 22,wherein the first phase graphical interface further comprises agraphical toolbar enabling a user to access additional advertisementinformation.
 31. The method of claim 30, wherein the graphical toolbarincludes one or more hyperlinks.
 32. The method of claim 30, wherein thegraphical toolbar includes one or more graphical buttons.
 33. A systemcomprising: one or more processors; a computer readable storage mediumin communication with said one or more processors and tangibly storingcomputer code configured to execute: software permitting the generation,from a file, of a first phase and a second phase of a single multiphaseinteractive graphical advertisement that includes an embedded streamingmedia component and first phase and second phase dimension information,the first phase having a first graphical dimension and the second phasehaving a second graphical dimension wherein the first graphicaldimension and the second graphical dimension are different and aredefined by the dimension information, the second phase including atleast a streaming media component space for integration of the streamingmedia component; and a player engine for incorporating the streamingmedia component into the streaming media component space of the secondphase, the player engine including a core set of media player variablesand a core set of media player controls, which are part of themultiphase advertisement, for customizing the streaming media componentso that the streaming media component is made available to playstreaming media content in the second phase of the single multiphasegraphical advertisement.
 34. A single multiphase interactiveadvertisement displayed on a display of a computing device comprising: afirst phase of the single multiphase interactive advertisementcomprising a graphical interface and first phase and second phasedimension information, the first phase of the single multiphaseadvertisement displayed on the display of the computing device; a secondphase of the single multiphase interactive advertisement, in the secondphase the graphical interface including at least a streaming mediacomponent space, and having a dimension that is different than adimension of the first phase, the dimension of the second phase and thefirst phase defined by the dimension information, the second phase ofthe single multiphase advertisement displayed on the display of thecomputing device; and a streaming media component incorporated by aplayer engine into the streaming media component space of the secondphase, the player engine including a core set of media player variablesand a core set of media player controls, which are part of themultiphase advertisement, for customizing the streaming media componentso that the streaming media component is made available to playstreaming media content in the second phase of the multiphaseadvertisement's graphical interface; wherein the single multiphaseinteractive advertisement is generated from a file and wherein thesecond phase of the single multiphase interactive advertisement istriggered by an action performed on the first phase of the singlemultiphase interactive advertisement.
 35. The single multiphaseinteractive advertisement of claim 34, wherein the first phase furtherincludes a toolbar, the toolbar including one or more graphical buttonsenabling a user of the single multiphase interactive advertisement tointeract with one or more features of the single multiphase interactiveadvertisement.
 36. The single multiphase interactive advertisement ofclaim 35, wherein interaction with one of the graphical buttons providesfurther information about the subject of the single multiphaseinteractive advertisement.
 37. The single multiphase interactiveadvertisement of claim 35, wherein interaction with one of the graphicalbuttons triggers the second phase.
 38. The single multiphase interactiveadvertisement of claim 35, wherein the action facilitates the user topurchase a product or service that is the subject of the singlemultiphase interactive advertisement.
 39. The single multiphaseinteractive advertisement of claim 34, wherein the second phase istriggered by a mouse over of the first phase.
 40. The single multiphaseinteractive advertisement of claim 34, wherein the second phase istriggered by mouse click on an area of the first graphical interface ofthe first phase.
 41. The single multiphase interactive advertisement ofclaim 34, wherein the second phase is triggered by mouse clicking agraphical button on the first graphical interface of the first phase.42. The single multiphase interactive advertisement of claim 34, whereinthe second phase is triggered by mouse clicking a hyperlink on the firstgraphical interface of the first phase.
 43. A single multiphaseinteractive advertisement displayed on a display of a computing device,the single multiphase interactive advertisement comprising: dimensioninformation; a first phase of the single multiphase interactiveadvertisement that is incorporated into a web page displayed on thedisplay of the computing device, in the first phase a vector-basedgraphical animation runs in the multiphase interactive advertisement'sgraphical interface upon launch of the web page, the graphical interfacehaving a first dimension in the first phase, the first dimension definedby the dimension information; a second phase that is launched uponcompletion of the vector-based graphical animation of the first phase,in the second phase the single multiphase interactive advertisement'sgraphical interface has a second dimension that is smaller than thefirst dimension of the first phase, the second dimension defined by thedimension information, and in the second phase the graphical interfaceincludes a toolbar for permitting a user to interact with the secondphase of the single multiphase interactive advertisement, the secondphase of the single multiphase interactive advertisement displayed onthe display of the computing device; a third phase in which the singlemultiphase interactive advertisement's graphical interface includes atleast a streaming media component space, and in the third phase thegraphical interface has a dimension that is larger than the seconddimension of the second phase and defined by the dimension information,the third phase of the single multiphase interactive advertisementdisplayed on the display of the computing device; and a player enginebuilding a streaming media component in accordance with a predefineddesign of the multiphase advertisement's graphical interface by which atleast a set of core media player variables and a set of core mediaplayer controls are each predefined and part of the multiphaseadvertisement, the streaming media component incorporated by thecomputing device into the streaming media component space of the thirdphase so that the streaming media component is made available to playstreaming media content in the third phase of the single multiphaseinteractive advertisement's graphical interface; wherein the third phaseof the single multiphase interactive advertisement is triggered by anaction performed on the second phase of the single multiphaseinteractive advertisement and wherein the single multiphase interactiveadvertisement is generated from a file.
 44. A single multiphaseinteractive advertisement displayed on a display of a computing device,the single multiphase interactive advertisement comprising: dimensioninformation; a first phase of the single multiphase interactiveadvertisement that is incorporated by a computing device into a web pageand comprises a first graphical interface that includes a graphicaldisplay visible upon launch of the web page, the graphical interfacehaving a first dimension in the first phase, the first dimension definedby the dimension information; a second phase that is dynamicallylaunched after a period of time, in the second phase the singlemultiphase interactive advertisement's graphical interface has a seconddimension that is smaller than the first dimension of the first phase,the second dimension defined by the dimension information, and in thesecond phase the graphical interface includes a toolbar for permitting auser to interact with the second phase of the single multiphaseinteractive advertisement; a third phase in which the single multiphaseinteractive advertisement's graphical interface has a dimension that islarger than the second dimension of the second phase and defined by thedimension information; and a player engine for incorporating a streamingmedia component into a streaming media component space of the thirdphase, the player engine including a core set of media player variablesand a core set of media player controls, which are part of themultiphase advertisement, for customizing the streaming media componentso that the streaming media component is made available to playstreaming media content in the third phase of the single multiphaseadvertisement, wherein the third phase of the single multiphaseinteractive advertisement is triggered by an action performed on thesecond phase of the single multiphase interactive advertisement, andwherein the single multiphase interactive advertisement is generatedfrom a file.
 45. The single multiphase advertisement of claim 44,wherein in the third phase the single multiphase interactiveadvertisement's graphical interface includes at least a streaming mediacomponent space and wherein a streaming media component is incorporatedinto the streaming media component space of the third phase, so that thestreaming media component is made available to play streaming mediacontent in the third phase of the single multiphase interactiveadvertisement's graphical interface.